﻿local addonName,ns = ...

ns.PlateColorDB = {
	myVersion = 0,
	showid = false,				--鼠标提示显示ID
	disableCVarSet = false,		--禁用全部CVar选项
	hpTexture = "PlateColor",	--材质选择
	showAllName = false,		--始终显示名字
	whiteName = false,			--白色名字
	enemyNameOUTLINE = true,	--敌方名字描边
	enemyNameScale = 12,		--敌方名字大小
	friendNameOUTLINE = true,	--友方名字描边
	friendNameScale = 11,		--友方名字大小
	NPCNameOUTLINE = false,		--NPC名字描边
	NPCNameScale = 10,			--NPC名字大小
	NPCwhiteFunText = true,		--NPC白色功能文本
	OnlyName = true,			--仅显名字模式
	friendnpX = 154,			--友方血条宽度
	friendnpY = -35,			--友方姓名版上下位置
	nameQuest = true,			--显示任务标志
	hideFlags = false,			--隐藏精英标志
	petScale = true,			--宠物血条缩小
	arrow = true,				--右侧箭头指示器
	focusTexture = true,		--焦点斜线材质
	mGlow = true,				--鼠标指向边框变色
	classIcon = false,			--显示职业图标
	castold = true,				--旧版施法条
	CastBarTexture = "PC-White",--施法条材质
	castTime = true,			--施法剩余时间
	castBarHeight = 18,			--施法条高度
	castIntName = true,			--施法条打断来源名字
	castTarget = true,			--施法预警
	targetIsyou = true,			--被选中预警
	castTargetSize = 21,		--施法目标名字大小
	levelText = true,			--等级文本
	absorbText = true,			--吸收盾文本
	hpPercent = true,			--生命值百分比
	hpValue = false,			--生命值数值
	hpUnits = 1,				--生命值单位
	Delimiter = "|cffB2B2B2 || |r",--分隔符
	hpScale = 1,				--生命值大小
	hpPoint = 3,				--生命值位置
	npRange = 60,				--姓名版可见范围
	npWidht	= 1.4,				--姓名版宽度
	npHeight = 2.7,				--姓名版高度
	npScale = 0.7,				--姓名版全局缩放
	npTargetScale = 1,			--当前目标缩放
	npNoTargetAlpha = 1,		--非当前目标透明度
	selfShown = false,			--始终显示个人资源
	selfMpScale = 1,			--个人资源缩放
	selfMpText = true,			--个人资源能量值
	selfMpTextScale = 1,		--个人资源文本大小
	npOverlapV = 0.8,			--姓名版垂直间距
	npOverlapH = 0.6,			--姓名版水平间距
	npOccludedAlpha = 1,		--障碍物透明度
	
	npccolor1 = {r=0,g=0, b=1},			--NPC1颜色
	npccolor2 = {r=0,g=1, b=1},			--NPC2颜色
	autoLessHp = true,					--自动判断斩杀线
	setLessHp = 0,						--手动斩杀线
	lessHpLine = true,					--斩杀分割线
	useLessHp = true,					--启用斩杀颜色
	lessHp = {r=1, g=0, b=1},			--斩杀颜色
	myTarget = true,					--当前目标
	myTargetColor = {r=0, g=1, b=1},	--当前目标颜色
	myFocus = false,					--焦点变色开关
	myFocusColor = {r=1, g=0.7, b=0.8},	--焦点颜色
	allColor = {r=1, g=0, b=0}, 		--全局颜色优先级最低
	
	threatColor = true,							--非T仇恨变色
	noThreatColor = {r=1, g=0, b=0},			--无仇恨
	highThreatColor = {r=1, g=0.5, b=0},		--高仇恨
	myThreatColor = {r=0.3, g=0, b=0.6},		--仇恨是你
	lowThreatColor = {r=0.2, g=0.3, b=0.6},		--仇恨降低
			
	TANKthreatColor = true,						--T单独仇恨变色			
	TANKnoThreatColor = {r=1, g=0, b=0},		--T无仇恨
	TANKhighThreatColor = {r=1, g=0.5, b=0},	--T高仇恨
	TANKmyhreatColor = {r=0.3, g=0, b=0.6},		--T仇恨是你
	TANKlowThreatColor = {r=0.2, g=0.3, b=0.6},	--T仇恨降低
	
	PCBARCOLOR = {r=0, g=1, b=0},				--自定义血条颜色
	
	hpRightAura = true,		--血条右侧光环
	RightAuraTip = true,	--右侧光环鼠标提示
	hpAuraToLeft = false,	--右侧光环放置左侧
	hideAura = false,		--隐藏光环
	auraCooldownText = true,--光环冷却时间
	auraToolTip = false,	--光环鼠标提示
	auraSquare = false,		--正方形光环
	auraScale = 25,			--光环大小
	auraOffsetY = 0,		--光环上下偏移
	selfHpAura = true,		--自己血条光环
	selfAuraScale = 1,		--自己血条光环尺寸
	
	auraShowDefault = true,	--显示默认光环
	npcShowDefault = true,	--显示默认NPC
	NPCs = ns.NPC,			--NPC表
	Auras = ns.Aura,		--光环表

}

----------配置加载---------
local loadFrame = CreateFrame("FRAME"); 
loadFrame:RegisterEvent("ADDON_LOADED"); 
loadFrame:RegisterEvent("PLAYER_LOGOUT"); 

function loadFrame:OnEvent(event, arg1)
	if not PlateColorDB then PlateColorDB = {} end
	for i, j in pairs(ns.PlateColorDB) do
		if type(j) == "table" then
			if PlateColorDB[i] == nil then PlateColorDB[i] = {} end
			for k, v in pairs(j) do
				if type(k) ~= "number" and PlateColorDB[i][k] == nil then --不是颜色表
					PlateColorDB[i][k] = v
				end
			end
		else
			if PlateColorDB[i] == nil then PlateColorDB[i] = j end
		end
	end
end
loadFrame:SetScript("OnEvent", loadFrame.OnEvent);